Not applicable.
1. Field of the Invention
The invention disclosed broadly relates to communications systems, and more specifically relates to optimizing the allocation of bandwidth and communication links in a communication session, particularly when such optimization is based on a cost function.
2. Description of the Related Art
The information age is upon us, and information is transmitted by the ubiquitous communication link. Communication links abound in business and the marketplace, in our personal lives, in education, in entertainment, and in virtually every sector of society. Pagers, cellular phones, browsing the World-Wide Web, and E-mail are just some of the myriad applications that are requiring an ever increasing number of communication links. The two (or more) users on either end of a communication link may also be in a variety of relationships or hierarchies, such as peer-to-peer or client-server.
With the increasing amount of information flow and bandwidth requirements, there is a continuing need for management of the communication link. Many of the management systems simply look at the load on, or utilization of, the link. Such systems will redirect a communication session to another link or another route when a given link becomes overutilized.
Other management systems also employ a mechanism for addressing the costs involved. Bandwidth costs money, and without an infinite supply of free bandwidth there will always be tradeoffs. Larger bandwidth physical connections allow faster response times and faster transmit times, but they cost more money. This basic tradeoff applies to any communication link, regardless of protocol, standard, and technology. To be sure, there are continually more advances which provide more bandwidth for the dollar, but the basic tradeoff is still present. The logic behind these systems is that, because infinite bandwidth costs infinite dollars, one should only use the amount of bandwidth that one needs.
The most common approach is to utilize a timer. Many applications that run on desk-top computers have such timers built into them. After dialing-in to a service, the user knows, or will quickly find out, that a prolonged period of inactivity, one minute for example, will result in being disconnected. Some of these applications issue reminders before disconnecting the user. Some of them also allow the user to adjust the length of the time-out period.
The above situation was presented from the perspective of a user who either is connected or disconnected. That is, the user will either reserve all of the available bandwidth or none of it. It is also instructive to examine the situation from the perspective of a user with a more finely variable bandwidth requirement. Such a user will typically always need a physical connection, but the bandwidth required may vary considerably over time. Timers can also be used for these applications, and can be built into the communications protocol. ISDN, for example, has a timeout feature.
The performance of these approaches is not optimal, however. Accordingly, there is a need for a method for optimizing the allocation of bandwidth and communication links in a communication session which overcomes these problems, and for a system and a computer readable medium which implement the method.